package cn.qhuan.modules.mapper;

import cn.qhuan.modules.dtos.ArtistDto;
import cn.qhuan.modules.entity.Artist;

import cn.qhuan.modules.entity.Works;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Description: 艺术家表
 * @Author: 司翔宇
 * @Date:   2020-12-28
 * @Version: V1.0
 */
public interface ArtistMapper extends BaseMapper<Artist> {
    /**
     * 设置作品与朝代的关系
     * @param uuid
     * @param artistId
     * @param dynastyId
     */
    public void addArtistToDynasty(String uuid, String artistId, String dynastyId);

    /**
     * 删除艺术家与朝代的关系
     * @param artistId
     * @param
     */
    public void deleteAssociation(String artistId);
    /**
     * 查询艺术家在关联表中出现的次数
     * @param artistId
     * @param
     * @return
     */
    public Integer selectCount(String artistId);

    /**
     * 根据艺术家id查询关联的作品id
     * @param dto
     * @return
     */
    public List<Works> findWorksByArtistId(@Param("dto") ArtistDto dto);

    /**
     * 通过艺术家id查询作品数量
     * @param artistId
     * @return
     */
    public Integer queryWorksCountByArtistId(String artistId);

    /**
     * 通过艺术家id查询文章数量
     * @param artistId
     * @return
     */
    public Integer queryDocumentCountByArtistId(String artistId);

}
